[AFF-BACKEND-003] Создать метод Метод ApplyWeightDecay() (DAILY CRON)

Разработка механизма ежедневного угасания интересов (Decay Strategy) по Cron

Author

Services Task & Simulation Framework Documentation

Published

July 13, 2026

NoteКраткая карточка задачи
  • Репозиторий / Компонент: affinity-service (Домен Recommendation Domain).
  • Контракт метода: Фоновая системная задача (Cron Job / Celery Beat / APScheduler).
  • Ссылка на Метод: Спецификация метода
  • Статус: Готово к реализации

  • Инструкция по шагам:
    1. На Шаге 4: Сконфигурировать расписание запуска задачи: ежедневно в 03:00 по локальному времени.
    2. На Шаге 5: Реализовать массовое снижение весов ассоциаций для симуляции угасания краткосрочных интересов пользователя. Выполнить сканирование ключей аффинити в Redis (используя безопасный SCAN вместо блокирующего KEYS).
    3. Для каждого веса связи применить математический коэффициент затухания: New_Score = Current_Score * 0.95. Если после пересчета вес падает ниже порогового значения (например, < 0.1), автоматически удалять связь из Redis для очистки оперативной памяти.
    4. На Шаге 9: По завершении итерации сформировать и отправить асинхронное уведомление с метаданными пересчета матрицы в bupar-audit-service для логирования шага процесса.